const errorHandler = (err, req, res, next) => {
  console.error("错误详情:", err);

  // 将错误信息保存到响应对象中，供日志中间件使用
  res._error = err.message || "未知错误";

  // 根据错误类型返回不同的状态码
  const statusCode = err.statusCode || 500;
  res.status(statusCode).json({
    success: false,
    message: err.message || "服务器内部错误",
    error: process.env.NODE_ENV === "development" ? err.stack : undefined,
  });
};

export default errorHandler;
